오픈소스 패키지의 활용

형환희

2024-02-20

오픈소스와 무료소프트웨어의 차이

MS-office Excel은 유료 상용 프로그램.

  • 오픈소스

Libre-office : 자유&오픈소스 프로그램입니다. 누구나 자유롭게 개발에 참여할 수 있습니다.

  • 무료 제공 프로그램

Google Sheet : Business Standard는 유료이나 개인용은 무료로 제공됩니다.

오픈소스의 성공사

  • 초기의 소프트웨어 기업들은 절대 소스코드를 공개하지 않았습니다.

  • 해커와 연구자들은 무료 배포를 주장했고, 이윤을 추구하는 집단인 기업은 소유권을 주장했습니다.

flowchart LR
  A[폐쇄적 영리 소프트웨어] --> B(오픈소스 생태계 활성화)
  B --> C{Decision}
  C --> D[오픈소스에 기여 및 참여]
  • 영리 소프트웨어 기업의 상징과도 같은 마이크로소프트(MS)조차 오픈소스인 리눅스를 지원하고 있습니다.

오픈소스 Operating System

리눅스(Linux)

Ubuntu 22.04

Major Languages for Data

R

  • R Project for Statistical Computing.

Python

  • Python is Open-source Programming Language.

Another Language for Data

Julia https://julialang.org/

  • Julia is a high-level, general-purpose dynamic programming language

R Packages

R에는 Data Science를 위한 다양한 오픈소스 패키지가 있습니다.

https://www.tidyverse.org/

한국R사용자회

https://r2bit.com/

사단법인 한국R사용자회

Quarto

An open-source scientific and technical publishing system. To learn more about Quarto see https://quarto.org/

Python Library(Modules)

Python에는 Data Science를 위한 다양한 오픈소스 모듈이 있습니다.

  • Numpy : 파이썬으로 수치해석, 통계 관련 기능을 구현한다고 할 때 Numpy는 가장 기본이 되는 모듈.

  • Pandas : 파이썬의 데이터 분석 라이브러리로 수치형 테이블과 시계열 데이터를 조작하고 운영하기 위한 데이터를 제공.

Open Source Books

  • R for Data Science (2e)

https://r4ds.hadley.nz/

  • R Graphics Cookbook (2e)

https://r-graphics.org/

Git & Github

  • Git : 리누스 토르발스가 개발한 분산형 버전 관리 시스템(VCS). Git 자체는 오픈 소스이며 저장소는 git.kernel.org1

  • Github : 마이크로소프트 산하의 Git 플랫폼. 개발자 컨퍼런스, 커뮤니티, 프로젝트 공유, Git 호스팅 기능 등 개발자 친화적인 정책 덕분에 자유 소프트웨어와 오픈소스의 성지.

Docker

리눅스 컨테이너 기반 오픈소스 가상화 플랫폼

윈도우 도커 설치 URL https://docs.docker.com/desktop/install/windows-install/

Rocker

Docker Containers for the R Environment

https://rocker-project.org/

오픈소스 기여

프로그램을 만들어 배포하거나 유용한 정보를 블로그 게재하는 등으로 오픈소스 생태계에 기여

Windows에서 Docker R Tidyverse 사용 환경 설정 방법

  1. WSL2설치, 윈도우 도커 설치 및 도커 데스크탑 실행

  2. 바인드마운트 디렉토리에서 PowerShell 실행

  3. PS C:\디렉토리> docker run -d -p 8888:8787 -v ${pwd}:/home/rstudio -e PASSWORD=pass --name rstudio-docker rocker/tidyverse

  4. 웹브라우저에서 localhost:8888 접속

  5. Username: rstudio, Password: pass

  6. Sign In 하고 Rstudio 사용